from queue import Queue  
  
# 创建一个队列实例  
q = Queue()  
  
# 入队  
q.put('a')  
q.put('a')  
q.put('b')  
q.put('c')  
  
# 查看队列是否为空  
print(q.empty())  # 输出: False  
  
# 查看队列的大小  
print(q.qsize())  # 输出队列中元素的数量  
  
# 出队  
print(q.get())  # 输出: 'a'  
print(q.get())  # 输出: 'b'  
  
# 再次查看队列的大小  
print(q.qsize())  # 输出: 1  
  
# 查看队列是否已满（对于Queue，默认大小是无限的，所以总是返回False）  
print(q.full())  # 输出: False  
  
# 如果队列为空，get()方法会阻塞，直到队列中有元素可以返回  
# 可以通过设置block=False来避免阻塞，如果队列为空，将抛出Empty异常  
try:  
    print(q.get(block=False))  
except Queue.Empty:  
    print("队列为空")  
  
# 完成后，关闭队列（对于Queue，这一步不是必须的，因为Queue在Python解释器退出时会自动处理）  
# q.close()  
# 注意：close()方法用于与join()方法一起使用，以确保所有队列中的项都被处理完毕  
# 但在简单的使用场景中，通常不需要显式调用close()